import { createStore } from 'vuex'
import category from './modules/category'
import user from './modules/user'
import createPersistedState from 'vuex-persistedstate'
export default createStore({
  // 在严格模式下，无论何时发生了状态变更且不是由 mutation 函数引起的，将会抛出错误。这能保证所有的状态变更都能被调试工具跟踪到。
  strict: process.env.NODE_ENV === 'development',
  modules: {
    category,
    user
  },
  plugins: [
    // 默认存储在localstorage中
    createPersistedState({
      // 保存时的名字
      key: 'rabbit-vue-hm-83',
      // 需要自动添加到本地的模块，可以有多个
      paths: ['user'],
      // 默认就是localStorage
      storage: localStorage
    })
  ]
})
